import api from './api';

export const request = api;

// 获取商品列表
export function getProductList(pageNum, pageSize, spuName, categoryId, brandId) {
  return request({
    url: '/api/product/product_list',
    method: 'get',
    params: {
      pageNum,
      pageSize,
      spuName,
      categoryId,
      brandId
    }
  });
}

// 更新商品状态
export function updateProductStatus(spuId, status) {
  return request({
    url: `/api/product/product_status/${spuId}/${status}`,
    method: 'post'
  });
}

// 添加商品
export function addProduct(productForm) {
  return request({
    url: '/api/product_spu/add',
    method: 'post',
    data: productForm
  });
}

// 更新商品
export function updateProduct(productForm) {
  return request({
    url: '/api/product_spu/update',
    method: 'post',
    data: productForm
  });
}

// 获取商品详情(旧版，仅包含基本信息)
export function getProductDetail(spuId) {
  return request({
    url: '/api/product_spu/getById',
    method: 'get',
    params: {
      id: spuId
    }
  });
}

// 获取完整商品详情(包含属性和SKU信息)
export function getProductDetails(spuId) {
  return request({
    url: '/api/product_spu/getDetailsById',
    method: 'get',
    params: {
      id: spuId
    }
  });
}

// 根据ID获取商品
export const getProductById = (id) => {
  return request.get('/api/product_spu/getById', {
    params: {
      id
    }
  });
};


// 获取属性列表
export function getAttributeList() {
  return request({
    url: '/api/productAttribute/list',
    method: 'get'
  });
}

// 根据ID获取属性
export function getAttributeById(attrId) {
  return request({
    url: `/api/productAttribute/queryById/${attrId}`,
    method: 'get'
  });
}

// 添加属性
export function addAttribute(attribute) {
  return request({
    url: '/api/productAttribute/addProductAttribute',
    method: 'post',
    data: attribute
  });
}

// 更新属性
// export function updateAttribute(attribute) {
//   return request({
//     url: '/api/productAttribute/updateProductAttribute',
//     method: 'post',
//     data: attribute
//   });
// }

// 更新属性
export function updateAttribute(attribute) {
  return request({
    url: '/api/productAttribute/updateProductAttribute',
    method: 'post',
    data: attribute
  });
}

// 删除属性
export function deleteAttribute(id) {
  return request({
    url: '/api/productAttribute/delProductAttribute',
    method: 'post',
    params: { id }
  });
}
